﻿Public Class eMail
	Inherits vCardItem

	''' <value>True</value>
	Public Property IsInternet As Boolean = True

	''' <value>True</value>
	Public Property IsAmericaOnLine As Boolean = False

	''' <value>True</value>
	Public Property IsAppleLink As Boolean = False

	''' <value>True</value>
	Public Property IsATTMail As Boolean = False

	''' <value>True</value>
	Public Property IsCompuServe As Boolean = False

	''' <value>True</value>
	Public Property IseWorld As Boolean = False

	''' <value>True</value>
	Public Property IsIBMMail As Boolean = False

	''' <value>True</value>
	Public Property IsMCIMail As Boolean = False

	''' <value>True</value>
	Public Property IsPowerShare As Boolean = False

	''' <value>True</value>
	Public Property IsProdigy As Boolean = False

	''' <value>True</value>
	Public Property IsTelex As Boolean = False

	''' <value>True</value>
	Public Property IsX400 As Boolean = False

	Public Property EmailAddress As String

	Protected Overrides Property vProperty As String
		Get
			Return "EMAIL"
		End Get
		Set(value As String)
		End Set
	End Property

	Protected Overrides Property vValues As System.Collections.Generic.List(Of String)
		Get
			Dim myValues As New List(Of String)

			If IsAmericaOnLine Then myValues.Add("AOL")
			If IsAppleLink Then myValues.Add("AppleLink")
			If IsATTMail Then myValues.Add("ATTMail")
			If IsCompuServe Then myValues.Add("CIS")
			If IseWorld Then myValues.Add("eWorld")
			If IsInternet Then myValues.Add("INTERNET")
			If IsIBMMail Then myValues.Add("IBMMail")
			If IsMCIMail Then myValues.Add("MCIMail")
			If IsPowerShare Then myValues.Add("POWERSHARE")
			If IsProdigy Then myValues.Add("PRODIGY")
			If IsTelex Then myValues.Add("TLX")
			If IsX400 Then myValues.Add("X400")

			Return myValues
		End Get
		Set(value As System.Collections.Generic.List(Of String))
		End Set
	End Property

	Protected Overrides Property vParameters As System.Collections.Generic.List(Of String)
		Get
			Return New String() {EmailAddress}.ToList
		End Get
		Set(value As System.Collections.Generic.List(Of String))
		End Set
	End Property

	Public Sub New(EmailAddress As String)
		Me.EmailAddress = EmailAddress
	End Sub

End Class
